#pragma once

#include "DLAllRestriction.hpp"

namespace terms {
	namespace dl {
		template <typename L=std::string, typename I=std::string, typename C=std::string, typename R=std::string>
		class DLObjectAllRestriction
			: public virtual DLAllRestriction<DLClassExpression<L, I, C, R>, L, I, C, R>
		{
		public:
			typedef DLObjectAllRestriction<L, I, C, R> ThisClass;

		public:
			using DLAllRestriction<DLClassExpression<L, I, C, R>, L, I, C, R>::DLAllRestriction;

		public:
			virtual DLTermOrder
			get_type_order() const
			{
				return DLTermOrder::DATA_ALL_RESTRICTION;
			}
		};
	}	
}
